Golang Job: Platform Engineer

Job added on

Location

Sydney - Australia

Job type

Full-Time

Golang Job Details

Platform Engineer
The Role
Software Engineers are an integral part of our autonomous, multi-disciplinary product and Platform teams, working closely with UX designers, Product Managers, and other software engineers to deliver quality, rock-solid customer experiences and scale our systems for ever-increasing growth.
We're looking for a talented engineer with a passion to build robust, scalable platforms and an eye for finding elegant solutions to complex problems. Working in an established Platform engineering team to build and maintain services across the entire technology stack within the Campaign Monitor platform. We work in small teams with clear objectives, which allows for accountability and transparency, and an expectation to support and maintain the software we create.
The technology stacks you will work with cover many languages and frameworks including C#, Java, Golang, and we have a large amount of ongoing projects including:
  • Event-driven microservices and APIs in a distributed architecture
  • Dynamic web applications (ReactJS, ASP.NET, Java)
  • Infrastructure development on AWS (EC2, ECS, EMR, SNS/SQS, RDS, Elasticache, Elasticsearch)
  • Event streaming & big data solutions (Kafka, Spark, Airflow)
Further responsibilities of the role include:
  • Deploying, scaling, automating, and monitoring servers in multiple data centers and the cloud.
  • Automating repetitive tasks required to maintain a secure and up to date operational environment.
  • Developing, improving, and maintaining the infrastructure management.
  • Being available to handle and resolve issues escalated from the production environment as part of an on-call roster.
About You
Essential
  • BA/BS degree in Computer Science or related field (In lieu of degree, 5+ years of relevant industry experience).
  • Experience designing and implementing high throughput internal APIs for upstream and external services
  • Fluency in at least two programming languages (C#, Java, Go).
  • Understanding of distributed systems architecture and best practices in distributed system design.
  • Extensive commercial hands on experience with a variety of AWS services.
  • You've used a range of storage engines (SQL, Elasticsearch, Cassandra, RDS offerings) and know when each type is useful.
  • You know how web applications work, from the underlying network protocols (HTTP, TCP) through to webserver, browser behaviour and everything in between.
  • Strong knowledge of TCP/IP and UDP networking and troubleshooting using a variety of tools and approaches.
  • Working knowledge of and experience in administering Linux based operating systems
  • All your infrastructure is code, you're experienced with configuration and orchestration tools for AWS provisioning (Terraform, Ansible).
  • Effective communication skills, via interactive mediums and documentation.

Desirable
  • 5+ years experience as a Platform software engineer.
  • Knowledge and experience containerising applications using Docker and deploying to AWS ECS.
  • Hands-on experience working with and administering self managed PostgreSQL databases.

What Are The Perks
  • Remote-first position, or work from our amazing Sydney office if you prefer!
  • Competitive salary
  • Generous annual leave and holiday schedule
  • Flexible work hours
  • Training budget to ensure you are always learning and growing
  • Fully catered breakfast, lunch (select days) and snacks, drinks options and barista coffee when you are working in our Sydney office
  • Personal fitness, yoga classes, swimming passes, team sports fully funded by Campaign Monitor when you are working from the Sydney office
  • Salary Continuance and Life Insurance
  • An awesome work environment using the best available equipment